Time-series fault detection, fault classification, and transition analysis using a k-nearest-neighbor and logistic regression approach

ABSTRACT

A method includes receiving historical time-series data and generating training data comprising a plurality of randomized data points associated with the historical time-series data. The historical time-series data was generated by one or more sensors during one or more processes. The method further includes training a logistic regression classifier based on the training data to generate a trained logistic regression classifier. The trained logistic regression classifier is associated with a logistic regression that indicates a location of a transition pattern from a first data point to a second data point. The transition pattern reflects about a reflection point located on the transition pattern. The trained logistic regression classifier is capable of indicating a probability that new time-series data generated during a new execution of the one or more processes matches the historical time-series data.

RELATED APPLICATION

This application is a continuation application of U.S. patentapplication Ser. No. 15/269,530, filed Sep. 19, 2016, the entirecontents of which are hereby incorporated by reference herein.

TECHNICAL FIELD

The present disclosure relates to artificial neural networks, and, moreparticularly, to time-series fault detection, fault classification, andtransition analysis for analyzing a system.

BACKGROUND OF THE INVENTION

Processes such as semiconductor processing processes include multiplesteps over an interval of time. A process may include a transition froma first step to a second step. Time-series data is data collected overthe interval of time, including the transition (e.g., the time-seriestransition). Typically, statistical methods (e.g., statistical processcontrol (SPC)) are utilized to analyze sensor data for semiconductormanufacturing processes. However, SPC and other statistical methods ofmonitoring processes are not capable of monitoring time-seriestransitions. Statistical methods cannot detect short-time signalperturbations in data received from sensors over time. Statisticalmethods also provide false positives (e.g., that an entire signal doesnot match a target signal because a minimal portion of the signal isoutside of a guard band) and do not allow for adjustment of thesensitivity of anomaly detection.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure is illustrated by way of example, and not by wayof limitation, in the figures of the accompanying drawings.

FIG. 1 illustrates one embodiment of a network architecture.

FIG. 2 illustrates one embodiment of a method for time-series transitionanalysis.

FIG. 3 illustrates another embodiment of a method for time-seriestransition analysis.

FIG. 4 illustrates time-series data for time-series transition analysis.

FIG. 5A illustrates randomized data point combinations and time windowfor time-series transition analysis.

FIG. 5B illustrates distances between randomized data points fortime-series transition analysis.

FIG. 6 illustrates distance from training set for time-series transitionanalysis.

FIGS. 7A-7B illustrate distance from training set for time-seriestransition analysis.

FIG. 8 illustrates logistic regression for time-series transitionanalysis.

FIG. 9 illustrates effect of theta on logistic regression fortime-series transition analysis.

FIGS. 10A-10B illustrate probability of matching the time-series datafor time-series transition analysis.

FIGS. 11A-11D illustrate probability of matching the time-series datafor time-series transition analysis.

FIG. 12A illustrates time-series data for time-series transitionanalysis.

FIG. 12B illustrates distance from training set for time-seriestransition analysis.

FIG. 12C illustrates logistic regression for time-series transitionanalysis.

FIGS. 13A-13D illustrate probability of matching the time-series datafor time-series transition analysis.

FIG. 14 illustrates time-series data for multiple inputs for time-seriestransition analysis.

FIGS. 15A-15D illustrate probability of matching the time-series datafor multiple inputs for time-series transition analysis.

FIG. 16 illustrates an exemplary computer system.

DETAILED DESCRIPTION

Embodiments of the present disclosure are directed to a method andsystem for time-series transition analysis of data. For example, datasamples may be sensor data from semi-conductor processing equipment. Inone embodiment, the method and system can detect the probability of newtime-series data matching previous time-series data. The time-seriestransition analysis may be performed by using a combination of k-NearestNeighbor (kNN) analysis and logistic regression (LR) in embodiments.Embodiments of the present disclosure are extensible in that sensitivityof the time-series transition analysis can be adjusted.

As processes (e.g., manufacturing processes) include shorter step times,smaller parts, tighter tolerances, and so forth, transitions (e.g., howto get from step A to step B in a manufacturing process) become morecritical. Problems may occur if a process overshoots or undershoots atransition (e.g., transition from 10 degrees to 20 degrees too fast,transition from 10 degrees to 20 degrees too slow, etc.). Repeatableperformance includes consistent transitions. Conventional monitoringmethods (e.g., SPC) are not capable of monitoring transient time-seriesand cannot detect short-time signal perturbations in data received fromsensors over time (referred to herein as sensor time-series data). Theseshort anomalies can cause defects (e.g., on-wafer defects) or reduceyield.

Time-series transition analysis provides the ability to monitortime-series transitions. Time-series transition analysis may detectrare, strange, and/or unexpected sequences (e.g., shape, magnitude,position, etc. of a curve of the time-series data (value plotted againstsample); see FIG. 4) that are undetectable via conventional methods. Inone embodiment, the monitoring of time-series transitions is performedby estimating an expected transition trajectory from historicaltime-series data and comparing the trajectory of new time-series data tothe trajectory of the historical time-series data. Time-seriestransition analysis may also detect short anomalies and provide tuningparameters to sensitize or desensitize the accuracy of the detection.Time-series transition analysis may also overcome false positive ratesof conventional approaches. For example, guard band analysis may providea false positive that an entire signal does not match a target signalbecause a minimal portion of the signal is outside of a guard band,whereas the time-series transition analysis provides a probability ofthe signal matching the target signal and does not provide the falsepositive. In another embodiment, time-series transition analysis may beused to detect short-time signal perturbations (e.g., captureperturbations signature (e.g., similarity search) to search for allinstances of an FDC).

Fault detection classification (FDC) of time-series data may monitordata from a single sensor which may make the classification inaccurate.More information can be extracted by monitoring multiple signals thatco-vary in time (e.g., valve position changing before a pressure spikemay indicate an issue on a pressure control logic, a pressure spikebefore the valve position change may indicate an issue with a pressuresensor, etc.). The techniques disclosed herein address coupling signalsthat co-vary with time.

Time-series transition analysis may combine a k-Nearest Neighbor (kNN)approach (e.g., a kNN algorithm) with a logistic regression (LR) binaryclassifier to achieve the time-series monitoring. Specific excursions intime-series data may be detected using a combination of kNN and LR.Time-series transition analysis may use kNN to reduce a short termtime-series transition per time window (e.g., a 1 second sliding timewindow over a 100 second interval of time) to a single dimension todetermine a distance from expected behavior. Time-series transitionanalysis may use LR to build a binary classifier which is used to createa probability that new time-series data have the target pattern or not(e.g., whether new time-series data is outside of a distance determinedby the kNN approach).

Time-series transition analysis may be used to detect transitionsbetween set point changes in a process in view of time-series data anddetect a deviation from an expected transition trajectory in the newtime-series data. The expected transition trajectory may be defined bythe time-series data.

FIG. 1 illustrates a network architecture 100 according to oneembodiment. Initially, a time-series transition analysis system 102identifies data sources 106A-N (e.g., sensors) that define a systemand/or that are used to monitor a system, such as a physical processsystem 104. Physical process system 104 may be a semiconductorprocessing equipment, such as a chamber for an etch reactor, adeposition chamber, and so on. A user may select (e.g., via a graphicaluser interface (GUI)) time-series data (e.g., samples) from various onesof the data sources 106A-N via a client machine 110. The time-seriestransition analysis system 102 generates a training data set andcomputes distance values based on the training data set and thetime-series data.

In an embodiment, a user may also select excursions 108 (i.e., definedparameters of abnormal system behavior) via the client machine 110, andthe excursions 108 may be stored in a persistent storage unit 112 by thetime-series transition analysis system 102.

For example, the physical process system 104 could include manufacturingtools or be connected to manufacturing tools directly or via a network(e.g., a local area network (LAN)). Examples of manufacturing toolsinclude semiconductor manufacturing tools, such as etchers, chemicalvapor deposition furnaces, etc., for the manufacture of electronicdevices. Manufacturing such devices may include dozens of manufacturingsteps involving different types of manufacturing processes, which may beknown as a recipe.

The physical process system 104 can include any type of computingdevice, including desktop computers, laptop computers, programmablelogic controllers (PLCs), handheld computers or similar computingdevices, to control the system. Data sources 106, such as sensors, maybe part of the physical process system 104 and/or the manufacturingtools or may be connected to the physical process system 104 and/or themanufacturing tools (e.g., via a network).

Client machines 110 can be any type of computing device includingdesktop computers, laptop computers, mobile communications devices, cellphone, smart phones, handheld computers or similar computing devices.

In one embodiment, the physical process system 104, the data sources106, the persistent storage unit 112, and the client machine 110 areconnected to the time-series transition analysis system 102, which maybe a direct connection or an indirect connection via a hardwareinterface (not shown), or via a network (not shown). The network can bea local area network (LAN), such as an intranet within a company, awireless network, a mobile communications network, or a wide areanetwork (WAN), such as the Internet or similar communication system. Thenetwork can include any number of networking and computing devices suchas wired and wireless devices.

The division of functionality presented above is by way of example only.In other embodiments, the functionality described could be combined intoa monolithic component or sub-divided into any combination ofcomponents. For example, the client machine 110 and the time-seriestransition analysis system 102 can be hosted on a single computersystem, on separate computer systems, or on a combination thereof.

FIG. 2 illustrates one embodiment of a method 200 for time-seriestransition analysis. Method 200 can be performed by processing logicthat can comprise hardware (e.g., circuitry, dedicated logic,programmable logic, microcode, etc.), software (e.g., instructions runon a processing device), or a combination thereof. In one embodiment,method 200 is performed by the time-series transition analysis system102 of FIG. 1.

At block 202 of FIG. 2, processing logic of the time-series transitionanalysis system 102 receives time-series data 402 (e.g., a targetsignal), as shown in FIG. 4. One or more sensors may generate thetime-series data 402 during a process (e.g., a manufacturing process).The time-series data 402 may include a first plurality of data points.The first plurality of data points may include data points at samples ofthe time-series data 402. For example, as shown in FIG. 4, samples maybe taken at n=25 and n+1=50. The values of the time-series data 402 mayinclude t(n) and t(n+1) at about [0,4].

Returning to FIG. 2, at block 204, processing logic of the time-seriestransition analysis system 102 generates a training data set includingrandomized data points 502 (e.g., random samples), as shown in FIG. 5A.The randomized data points 502 may include a distribution of an expectedrange for one or more excursions from the time-series data 402. Thedistribution may be a normal distribution or another distribution. Inone embodiment, 100 random samples are generated, where each randomsample represents an excursion from the time-series data. As shown inthe example in FIG. 5A, the randomized data points 502 includeexcursions at each of the data points (e.g., n and n+1). For example,data points are clustered around [0,4] at n=25 and n=50. The randomizeddata points 502 may be used as a training set for the pattern oftime-series data 402. Each randomized data point of the randomized datapoints 502 may correspond to one of the first plurality of data pointsfrom the time-series data 402.

Returning to FIG. 2, at block 206, processing logic of the time-seriestransition analysis system 102 generates randomized data pointcombinations using a set of randomized data points 502 that are within atime window 506, as shown in FIG. 5A. For example, a randomized datapoint combination may include one of the randomized data points 502 awithin the instance of time window 506 from 0 to n (e.g., 25) and one ofthe randomized data points 502 b within the instance of time window 506from n to n+1 (e.g., 25 to 50). In one embodiment, the processing logicmay generate randomized data points at the end of time window 506 (e.g.,see FIG. 5A). In another embodiment, processing logic may generaterandomized data points at a midpoint of the time window 506. In anotherembodiment, the processing logic may generate randomized data points atthe beginning of the time window 506.

The time window 506 may be a sliding time window and the process maytake place over an interval of time that is larger than the sliding timewindow. A sliding time window may be a time period that stretches backin time from the present. For instance, a sliding window of two secondsmay include any samples or data points that have occurred in the pasttwo seconds. In one embodiment of a sliding time window, the firstinstance could be 0-25, the second instance could be 25-50, and so on.Thus, the window slides by 25 seconds. In another embodiment of asliding time window, the first instance could also be 0-25, the secondinstance could be 1-26, then 2-27, and so on. Thus, the time windowslides by 1 second (or other unit of time).

The generating of the randomized data point combinations may beperformed for each of a plurality of instances of the sliding timewindow 506. Each instance of the plurality of instances may span adifferent time period in the interval of time (e.g., randomized datapoint combination includes a sample from a first data point at n and asecond data point at n+1.).

Returning to FIG. 2, at block 208, processing logic of the time-seriestransition analysis system 102 computes distance values based on therandomized data point combinations. A first distance value may becomputed for the first randomized data point combination. The firstdistance value may represent a combined distance of the first subset ofthe set of the plurality of randomized data points from the first subsetof the first plurality of data points. The computing of the distancevalues may be performed for each of a plurality of instances of thesliding time window.

As shown in FIG. 5B, the randomized data points may be combined toprovide randomized data point combinations 507 that each include a firstrandomized data point from t(n) and a second randomized data point fromt(n+1). These randomized data point combinations 507 may be used tocompute distance values using a k-Nearest Neighbor algorithm.

The processing logic may compute, using a k-Nearest Neighbor (kNN)algorithm, a distance threshold for each instance of the time window506. For example, a first distance threshold may be generated for thetime window 506 at time t=25 (e.g., using data points at times 0-25), asecond distance threshold may be generated for the time window 506 attime t=26 (e.g., using data points at times 1-26), and so on. Thecomputing of the distance threshold may include computing, for each ofthe plurality of randomized data point combinations 507, a Euclideandistance between a randomized data point combination 507 and eachremaining randomized data point combination 507 from the training dataset (see FIG. 5B). The computing of the distance threshold may includeidentifying a smallest Euclidean distance from computed Euclideandistances. The smallest Euclidean distance may be the distancethreshold.

Using a kNN type algorithm, the training data set can be used toestimate the distance between an excursion sample and the training data.For each training sample that includes a randomized data pointcombination, the Euclidean distance between this sample and all othersin the training set can be computed and the kth smallest value may bestored. For a sample j, the distance is calculated by the equation ofd₁=small_(k)(x_(j)−X), where X is a n×m matrix. The value n representsthe number of training samples (e.g., 100 random samples). The value ofm may represent the number of time samples or data points (e.g., twotime samples of n=25 and n+1=50 in the illustrated example of FIGS.4-6). The variable x_(j) may be an m-element vector (e.g., [0,4]) andmay represent the jth row in X This process is repeated for all samplesin the training set yielding the neighbor or limit vector L with nelements. The neighbor or limit vector L may be used to create awell-separated training set to train a simple classifier. Random samplesfrom the training set may be selected to computek_(nn)=small_(k)(x_(j)−X) for each sample. Random samples not from thetraining set may be selected and the k_(nn) value computed forvisualization purposes.

As shown in FIG. 6, random samples were selected from the excursionpattern (sample class 602 a) and the k_(nn) metric was estimated. Randomsamples were selected exhibiting non-excursion behavior (sample class602 b) and the k_(nn) metric was estimated. Sample class 602 a shows asmaller distance to the training set than sample class 602 b. In FIG. 6,a two-dimensional signal has been reduced to a one-dimensional metricthat appears linearly separable.

This above described process has been described for a sample thatincludes two data points. However, this same process may be generalizedto multiple dimensions to reduce multiple-dimension inputs to a singlemetric (e.g., the kth distance between the sample and the trainingdata). In examining FIG. 6 for all potential values, one minimum is atthe excursion location of about [0,4]. FIGS. 7A-7B illustrate the kNNmetric for multiple input patterns and shows the minimum appears atabout [0,4].

Returning to FIG. 2, at block 210, processing logic of the time-seriestransition analysis system 102 generates a classifier based on thecomputed distance values. The processing logic may generate theclassifier by determining a distance threshold based on the plurality ofcomputed distances. The generating of the classifier may be performedfor each of a plurality of instances of the sliding time window 506. Theclassifier may be generated using logistic regression.

The processing logic may determine the logistic regression 802 (logitfit; as shown in FIG. 8) from the training data (e.g., generate a logitfit 802 to the training data which will yield the probability of thesignal matching the excursion). The training data may include theoriginal time-series data as well as the randomized data pointcombinations and their computed distance values. The equation p(yX)=1/(1+e^(−β*X)) may be used to determine the logistic regression 802.The training data is used to estimate β. As shown in FIG. 8, thelogistic regression 802 may include a location of a transition patternfrom a first data point (sample class 602 a) to a second data point(sample class 602 b). The transition pattern may reflect about areflection point 804 centrally located on the transition pattern.Time-series data 402 may be detected as a step function with criticaltransitions (e.g., staircase deposition of short steps). Time-seriestransition analysis may be used to overcome false positives incurred viabounded approaches.

Time-series transient analysis may utilize tuning parameters.Time-series transition analysis may control how much a sample being outof specification contributes to distance. Increasing how much a samplethat is out of specification contributes will make the system moresensitive. Increasing the reflection point 804 makes the system lesssensitive. Adjusting the slope of the logistic regression 802 changesthe probability of samples close to the reflection 804. Logisticregression 802 may have a reflection limit (e.g., a vertical line) andany sample exceeding the reflection limit may be deemed to not match theexpected behavior. In one embodiment, a more or less shallow transitionpattern may be desired than that shown in FIG. 8. Theta may be used astuning parameter to adjust the transition to be more or less shallow.

FIG. 9 illustrates the logistic regression 802 with theta 902 adjustedto yield a shallower transition. With the shallower transition,probability can be estimated for all inputs t_(n) and t_(n+1). Using theβ estimate, the probability may maximize at the minimum determined inFIGS. 7A-7B.

The processing logic may receive a first parameter (e.g., theta 902) toadjust sensitivity of the determining of the probability. For example,theta 902 a may have a value of one, theta 902 b may have a value oftwo, and theta 902 c may have a value of five. The processing logic mayadjust shallowness of the transition pattern around the reflection point804 in view of the first parameter 902. A tuning knob may be used to setthe tuning to low sensitivity, high sensitivity, etc. by changing theta902.

Returning to FIG. 2, at block 212, processing logic of the time-seriestransition analysis system 102 determines, using the classifier, aprobability that new time-series data matches the original time-seriesdata. The processing logic may receive the new time-series data andcompute a second distance value between the original time-series datawithin the time window 506 and the new time-series within the timewindow 506. The processing logic may determine, using the classifier,whether the new time-series data within the time window 506 has a seconddistance value that exceeds the distance threshold and generate a faultor notice responsive to determining that the new time-series data withinthe time window 506 exceeds the distance threshold.

FIGS. 10A-10B show the probability for input pairs to match time-seriesdata 402 for all values [t_(n, tn+1)] (e.g., maximum at [0,4]).

FIGS. 11A-11D illustrate the probability of various new time-series data1002 matching time-series data 402 using time-series transitionanalysis. In FIG. 11A, new time series data 1102 a has a pattern thatsubstantially matches the pattern of time-series data 402, resulting ina probability of about 1. In FIG. 11B, the new time series data 1102 bat n=25 is larger than expected, so the probability of matching thetime-series data 402 is about 0.93. In FIG. 11C, the new time-seriesdata 1102 c is higher that time series data 402 at n=25 and lower atn=50, so the probability of matching the target signal is about 0.5. InFIG. 11D, the new time-series data 1102 d is substantially higher atn=25 and lower at n=50, so probability of matching the target is about0.

FIG. 3 illustrates one embodiment of a method 300 for time-seriestransition analysis. Method 300 can be performed by processing logicthat can comprise hardware (e.g., circuitry, dedicated logic,programmable logic, microcode, etc.), software (e.g., instructions runon a processing device), or a combination thereof. In one embodiment,method 300 is performed by the time-series transition analysis system102 of FIG. 1.

At block 302, processing logic receives time-series data 1102 a-dincluding a first plurality of data points (see FIGS. 11A-11D). Each ofthe first plurality of data points may be associated with a differenttime. The time-series data may be generated by a sensor during aprocess.

At block 304, processing logic compares a first subset of the firstplurality of data points from the time-series data 1102 a-d that arewithin a time window 1106 to a second subset of a second plurality ofdata points from previous time series data 402. The time window 1106 maybe a sliding time window that extends backward in time from a currenttime point by a specified amount. The sliding time window may extendforward in time from the current time point by a specified amount.

At block 306, processing logic computes a distance value that representsa combined distance of the first subset of the first plurality of datapoints from the second subset of the second plurality of data points.

At block 308, processing logic determines whether the distance valueexceeds a distance threshold (see FIGS. 11A-11D).

At block 310, processing logic outputs a notice responsive todetermining the distance value exceeds the distance threshold. In oneembodiment, the notice includes an indication of the probability of thenew time-series data matching the time-series data 402 (e.g., 0.996 fornew time series data 1102 a, 0.026 for new time series data 1102 b,0.502 for new time-series data 1102 c, 0 for new time-series data 1102d). In one embodiment, the notice includes an indication of whichsections of new time-series data (e.g., intervals of time windows thatcorrespond to new time-series data) where the new time-series data isbelow a probability threshold (e.g., 0.5, 0.85) of matching thetime-series data 402. In one embodiment, the notice may be displayed viaa graphical user interface (e.g., via a graph, a chart, text, etc.). Inone embodiment, the notice is one or more of an audible, visual, etc.alert. In one embodiment, the notice is sent by one or more of phone,email, text, etc. In one embodiment, the outputting of the notice causesa one or more of a tool, equipment, component, plant, etc. to one ormore of cease activity, pause activity, slow down activity, shut down,etc.

Time-series transition analysis may be used for anomaly detection. Inone embodiment, fault detection and classification (FDC) automaticallysearches recipe sensor data for known defects and/or abnormalsignatures. There may be a low user set up cost since expected behaviormay be inferred from historical behavior. A known defect library may beindependent of recipe set points. The same library can work on multiplerecipes. Defect libraries can be developed in-house in a controlledenvironment and deployed to the field. Known defects can have correctiveactions which allow rapid resolution of known defects. Troubleshootingknowledge may be captured for abnormal signatures (e.g., trace or sensordata of interest highlighted to users, user can tag or classify abnormalsignatures as well as adding corrective actions). Typical use casesinclude post-processing recipe data for known defects and knowledgecapture on troubleshooting and new defects.

Time-series transition analysis may be used for time-series excursiondetection to search time-series for anomaly behaviors not detectable bytraditional methods (e.g., SPC, standard fault monitoring methods).There may be a low user set up cost since expected behavior is inferredfrom historical behavior. The algorithm may be designed to be tolerantof false positives inherent in other approaches (e.g., simple guard bandmonitoring). Time-series excursions can be stored and used to searchhistoric data or future data. Troubleshooting knowledge may be captured.Typical use cases include post-processing recipe data for known defects,knowledge capture on troubleshooting and new defects, analysis oftransient time-series, and repeatability analysis.

Time-series transition analysis may be used to identify a problem when aprocess is experiencing errors. For example, a chamber may beexperiencing intermittent pressure spikes, but finding root cause andsolution may be difficult because of one or more of a lack of dataexport from the tool or inability to recreate the error in-house oron-site. Using time-series transition analysis, a subset of historicalcycling data of the tool can be searched for excursion behavior. Theexcursion behavior may be found (e.g., excursion search identifiesmultiple runs that do not match expected behavior), the spike in tooldata may be matched, and the excursion may be searched for again.Several occurrences of the excursion may allow efficientlytroubleshooting and resolving the issue. The issue may be identified asa function of a specific component (e.g., specific valve opening andclosing the pump causing fluctuations on pressure reading).

Time-series transition analysis may also be used to detect instability.For example, a tool may use a lower power signature on a recipe.Candidate recipes may be cycled continuously on the tool. Manualanalysis of all runs may be infeasible, so intermittent low probabilityand/or frequency issues may be missed. Using anomaly detection andtime-series excursion detection, the power and reflected power may beanalyzed for all steps for all runs of candidate recipes. Analysis mayquickly identify suspicious behaviors on a percentage of the runs. Somedefects observed may have a potential yield impact. Feedback to processdevelopment teams may prompt recipe modification and process repeats.Excursions may be reduced from by about 5%.

FIG. 12A illustrates time-series data for time-series transitionanalysis. As shown in FIG. 12A, n samples or data points of thetime-series data 402 are taken instead of 2 samples in a time window asshown in FIG. 4. In one embodiment, samples are taken at [5, 10, 15 . .. 95] which results in 19 samples, making method 200 or 300 a19-dimension problem instead of a 2-dimension problem. Using time-seriestransition analysis (e.g., method 200, method 300), a training set iscreated for the target signal at each sample point.

As shown in FIG. 12B, random samples were selected from the excursionpattern (class 602 a) and the k metric was estimated. Random sampleswere selected exhibiting non-excursion behavior (class 602 b) and the kmetric was estimated. As shown in FIG. 12C, the logistical regression802 is generated using theta of 5. Using the logistic regression 802,the probability of various input signals can be evaluated for variousinput signals matching the time-series data 402, as shown in FIGS.13A-13D. The time-series data 402 is the pattern for which trainedclassifier is generated. New time-series data 1302 a-d are the newsignals for additional executions of a particular process associatedwith the original time series data 402. In FIG. 13A, the new time-seriesdata 1302 a is shifted relative to the time-series data 402 and theprobability of match is about 0.6. In FIG. 13B, the new time-series data1302 b is higher relative to the time-series data 402 at n=0 to n=50 andthe probability of match is about 0.7.

As shown in FIG. 14, the time-series data 402 may include first data1402 (e.g., time-series data 1402) from a first sensor and second data1404 (e.g., time-series data 1404) from a second sensor. The processinglogic may determine a temporal relationship between the first data andthe second data (e.g., capture temporarily-spaced covariate signals forFDC). Each time-series data may have a different pattern on each signal.In FIG. 14, the dip in time-series data 1404 may be associated with anincrease in time-series data 1402 (e.g., may cause the increase intime-series data 1402). Time-series transition analysis (e.g., method200, method 300) can be used to detect the related patterns oftime-series data 1402 and 1404. In one embodiment, a single trainingvector is created with time-series data 1402 and 1404 concatenated(e.g., creating a 39-dimension problem). Using the logistic regressionand kNN algorithm, the probability of various input signals matching thetime-series data 1402 and 1404 and the relationships between thetime-series data 1402 and 1404 can be evaluated. FIGS. 15A-D illustratesthe probability of the input signals 1502 and 1504 matching thetime-series data 1402 and 1404.

In one embodiment, two training sets, one for each time-series data 402,are created and a two-dimensional logistic regression 802 is used.

In one example, time-series transition analysis may receive datameasured by three sensors. The data may include forward power data,reflected power data, and pressure data. The three signals from thethree sensors and their co-variance may indicate a signature of plasmastrike deviations. Time-series transition analysis may determine thatthere is an abnormal signature over an interval of time in the datameasured by the three sensors. A deviation from expected may beprimarily in a forward power signal at about 0.4 seconds into theinterval of time. The deviation may cause a higher than normal reflectedpower signature at the same time. This can be indicative of a plasmastriking issue. The pressure may show the correct shape, but shifted byabout 0.5 seconds. The pressure spike may be a marker for when thereflected power strikes. Time-series transition analysis of the datafrom the three sensors may identify where the abnormal signature startedthat affected one or more other signal data in order to determine whatcaused the plasma strike deviation.

FIG. 16 is a block diagram illustrating an exemplary computing device(or system) 1600. In one embodiment, computing device (or system) 1600may be time-series transition analysis system 102 of FIG. 1. Thecomputing device 1600 includes a set of instructions for causing thecomputing device 1600 to perform any one or more of the methodologiesdiscussed herein. The machine may operate in the capacity of a servermachine in client-server network environment. The machine may be apersonal computer (PC), a set-top box (STB), a server, a network router,switch or bridge, or any machine capable of executing a set ofinstructions (sequential or otherwise) that specify actions to be takenby that machine. Further, while only a single computing device isillustrated, the term “computing device” shall also be taken to includeany collection of machines that individually or jointly execute a set(or multiple sets) of instructions to perform any one or more of themethodologies discussed herein.

The exemplary computing device 1600 includes a processing system(processing device) 1602, a main memory 1604 (e.g., read-only memory(ROM), flash memory, dynamic random access memory (DRAM) such assynchronous DRAM (SDRAM), etc.), a static memory 1606 (e.g., flashmemory, static random access memory (SRAM), etc.), and a data storagedevice 1616, which communicate with each other via a bus 1608.

Processing device 1602 represents one or more general-purpose processingdevices such as a microprocessor, central processing unit, or the like.More particularly, the processing device 1602 may be a complexinstruction set computing (CISC) microprocessor, reduced instruction setcomputing (RISC) microprocessor, very long instruction word (VLIW)microprocessor, or a processor implementing other instruction sets orprocessors implementing a combination of instruction sets. Theprocessing device 1602 may also be one or more special-purposeprocessing devices such as an application specific integrated circuit(ASIC), a field programmable gate array (FPGA), a digital signalprocessor (DSP), network processor, or the like. The processing device1602 is configured to execute the operations and steps discussed herein.

The computing device 1600 may further include a network interface device1622. The computing device 1600 also may include a video display unit1610 (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)),an alphanumeric input device 1612 (e.g., a keyboard), a cursor controldevice 1614 (e.g., a mouse), and a signal generation device 1620 (e.g.,a speaker).

The data storage device 1616 may include a computer-readable storagemedium 1624 on which is stored one or more sets of instructions 1626embodying any one or more of the methodologies or functions describedherein. In one embodiment, instructions 1626 include time-seriestransition analysis system 102. The computer-readable storage medium1624 may be a non-transitory computer-readable storage medium includinginstructions that, when executed by a computer system, cause thecomputer system to perform a set of operations including time-seriestransition analysis (e.g., method 200, method 300, etc.). Theinstructions 1626 may also reside, completely or at least partially,within the main memory 1604 and/or within the processing device 1602during execution thereof by the computing device 1600, the main memory1604 and the processing device 1602 also constituting computer-readablemedia. The instructions 1626 may further be transmitted or received overa network 1628 via the network interface device 1622.

While the computer-readable storage medium 1624 is shown in an exemplaryembodiment to be a single medium, the term “computer-readable storagemedium” should be taken to include a single medium or multiple media(e.g., a centralized or distributed database, and/or associated cachesand servers) that store the one or more sets of instructions. The term“computer-readable storage medium” shall also be taken to include anymedium that is capable of storing, encoding or carrying a set ofinstructions for execution by the machine and that cause the machine toperform any one or more of the methodologies of the present disclosure.The term “computer-readable storage medium” shall accordingly be takento include, but not be limited to, solid-state memories, optical media,and magnetic media.

Some portions of the detailed description that follows are presented interms of algorithms and symbolic representations of operations on databits within a computer memory. These algorithmic descriptions andrepresentations are the means used by those skilled in the dataprocessing arts to most effectively convey the substance of their workto others skilled in the art. An algorithm is here, and generally,conceived to be a self-consistent sequence of steps leading to a result.The steps are those including physical manipulations of physicalquantities. Usually, though not necessarily, these quantities take theform of electrical or magnetic signals capable of being stored,transferred, combined, compared, and otherwise manipulated. It hasproven convenient at times, principally for reasons of common usage, torefer to these signals as bits, values, elements, symbols, characters,terms, numbers, or the like.

It should be borne in mind, however, that all of these and similar termsare to be associated with the appropriate physical quantities and aremerely convenient labels applied to these quantities. Unlessspecifically stated otherwise as apparent from the following discussion,it is appreciated that throughout the description, discussions utilizingterms such as “determining”, “identifying”, “comparing”, “sending”, orthe like, refer to the actions and processes of a computer system, orsimilar electronic computing device, that manipulates and transformsdata represented as physical (e.g., electronic) quantities within thecomputer system's registers and memories into other data similarlyrepresented as physical quantities within the computer system memoriesor registers or other such information storage, transmission or displaydevices.

Embodiments of the disclosure also relate to a system for performing theoperations herein. This system can be specially constructed for thepurposes described herein, or it can comprise a general-purpose computerselectively activated or reconfigured by a computer program stored inthe computer. Such a computer program can be stored in a computer (ormachine) readable storage medium, such as, but not limited to, any typeof disk including floppy disks, optical disks, CD-ROMs, andmagnetic-optical disks, read-only memories (ROMs), random accessmemories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, flashmemory, or any type of media suitable for storing electronicinstructions.

The algorithms and displays presented herein are not inherently relatedto any particular computer or other apparatus. Various general-purposesystems can be used with programs in accordance with the teachingsherein, or it may prove convenient to construct a more specializedapparatus to perform the method steps. The structure for a variety ofthese systems will appear from the description herein. In addition,embodiments of the present disclosure are not described with referenceto any particular programming language. It will be appreciated that avariety of programming languages can be used to implement the teachingsof the disclosure as described herein.

It is to be understood that the above description is intended to beillustrative, and not restrictive. Many other embodiments will beapparent to those of skill in the art upon reading and understanding theabove description. The scope of the disclosure should, therefore, bedetermined with reference to the appended claims, along with the fullscope of equivalents to which such claims are entitled.

What is claimed is:
 1. A method comprising: receiving historicaltime-series data, the historical time-series data having been generatedby one or more sensors during one or more processes; generating trainingdata comprising a plurality of randomized data points associated withthe historical time-series data; and training, by a processing device, alogistic regression classifier based on the training data to generate atrained logistic regression classifier, wherein the trained logisticregression classifier is associated with a logistic regression thatindicates a location of a transition pattern from a first data point toa second data point, wherein the transition pattern reflects about areflection point located on the transition pattern, the trained logisticregression classifier being capable of indicating a probability that newtime-series data generated during a new execution of the one or moreprocesses matches the historical time-series data.
 2. The method ofclaim 1, wherein the transition pattern corresponds to transitionsbetween set point changes in the one or more processes of manufacturingequipment, and wherein the probability is associated with deviation ofthe new time-series data from the transition pattern.
 3. The method ofclaim 1 further comprising: generating a plurality of randomized datapoint combinations based on a set of the plurality of randomized datapoints that are within a time window; and computing a plurality ofdistance values based on the plurality of randomized data pointcombinations, wherein the training of the logistic regression classifieris further based on one or more of the plurality of distance values. 4.The method of claim 3, wherein the computing of the plurality ofdistance values comprises computing, for each randomized data pointcombination of the randomized data point combinations, a correspondingdistance value between a corresponding randomized data point combinationand each remaining randomized data point combination of the plurality ofrandomized data point combinations, and wherein the training of thelogistic regression classifier based on the one or more of the pluralityof distance values comprises training the logistic regression classifierbased on a smallest distance value of the plurality of distance values.5. The method of claim 1 further comprising: receiving a tuningparameter; and adjusting, based on the tuning parameter, slope of thetransition pattern around the reflection point to adjust sensitivity ofaccuracy of detection of whether the new time-series data matches thehistorical time-series data.
 6. The method of claim 1, wherein thelogistic regression has a reflection limit, wherein a low probability ofmatching is associated with the new time-series data exceeding thereflection limit.
 7. The method of claim 1, wherein the historicaltime-series data comprises first data from a first sensor and seconddata from a second sensor, wherein the trained logistic regressionclassifier is further based on a temporal relationship between the firstdata and the second data.
 8. A method comprising: receiving currenttime-series data generated by one or more sensors during one or moreprocesses; providing, by a processing device, the current time-seriesdata as input to a trained logistic regression classifier, wherein thetrained logistic regression classifier is associated with a logisticregression that indicates a location of a transition pattern from afirst data point to a second data point, the transition patternreflecting about a reflection point located on the transition pattern;obtaining one or more outputs from the trained logistic regressionclassifier; and determining, based on the one or more outputs, aprobability of the current time-series data matching historicaltime-series data generated during historical execution of the one ormore processes.
 9. The method of claim 8 further comprising performing,based on the probability meeting a threshold probability, an actioncomprising one or more of: providing an alert; interrupting activity ofmanufacturing equipment; or updating manufacturing parameters of themanufacturing equipment.
 10. The method of claim 8 further comprisingproviding, based on the probability, an alert comprising one or more of:a first indication of the probability of the current time-series datamatching the historical time-series data; or a second indication of acorresponding probability one or more sections of the currenttime-series data that have a corresponding probability of matching thehistorical time-series data.
 11. The method of claim 8, wherein thetrained logistic regression classifier is a binary classifier thatindicates whether the current time-series data is outside a distancevalue determined based on the historical time-series data usingk-Nearest Neighbor (kNN).
 12. The method of claim 8, wherein thetransition pattern corresponds to transitions between set point changesin the one or more processes of manufacturing equipment, and wherein theprobability is associated with deviation of the current time-series datafrom the transition pattern.
 13. The method of claim 8 furthercomprising: receiving a tuning parameter; and adjusting, based on thetuning parameter, slope of the transition pattern around the reflectionpoint to adjust sensitivity of accuracy of detection of whether thecurrent time-series data matches the historical time-series data. 14.The method of claim 8, wherein the logistic regression has a reflectionlimit, wherein a low probability of matching is associated with thecurrent time-series data exceeding the reflection limit.
 15. Anon-transitory computer-readable storage medium including instructionsthat, when executed by a processing device, cause the processing deviceto perform operations comprising: receiving historical time-series data,the historical time-series data having been generated by one or moresensors during one or more processes; generating training datacomprising a plurality of randomized data points associated with thehistorical time-series data; and training a logistic regressionclassifier based on the training data to generate a trained logisticregression classifier, wherein the trained logistic regressionclassifier is associated with a logistic regression that indicates alocation of a transition pattern from a first data point to a seconddata point, wherein the transition pattern reflects about a reflectionpoint located on the transition pattern, the trained logistic regressionclassifier being capable of indicating a probability that newtime-series data generated during a new execution of the one or moreprocesses matches the historical time-series data.
 16. Thenon-transitory computer-readable storage medium of claim 15, wherein thetransition pattern corresponds to transitions between set point changesin the one or more processes of manufacturing equipment, and wherein theprobability is associated with deviation of the new time-series datafrom the transition pattern.
 17. The non-transitory computer-readablestorage medium of claim 15, wherein the operations further comprise:generating a plurality of randomized data point combinations based on aset of the plurality of randomized data points that are within a timewindow; and computing a plurality of distance values based on theplurality of randomized data point combinations, wherein the training ofthe logistic regression classifier is further based on one or more ofthe plurality of distance values.
 18. The non-transitorycomputer-readable storage medium of claim 17, wherein the computing ofthe plurality of distance values comprises computing, for eachrandomized data point combination of the randomized data pointcombinations, a corresponding distance value between a correspondingrandomized data point combination and each remaining randomized datapoint combination of the plurality of randomized data pointcombinations, and wherein the training of the logistic regressionclassifier based on the one or more of the plurality of distance valuescomprises training the logistic regression classifier based on asmallest distance value of the plurality of distance values.
 19. Thenon-transitory computer-readable storage medium of claim 15, wherein theoperations further comprise: receiving a tuning parameter; andadjusting, based on the tuning parameter, slope of the transitionpattern around the reflection point to adjust sensitivity of accuracy ofdetection of whether the new time-series data matches the historicaltime-series data.
 20. The non-transitory computer-readable storagemedium of claim 15, wherein the logistic regression has a reflectionlimit, wherein a low probability of matching is associated with the newtime-series data exceeding the reflection limit.